Pattern Matching as Cut Elimination
نویسندگان
چکیده
We present a typed pattern calculus with explicit pattern matching and explicit substitutions, where both the typing rules and the reduction rules are modeled on the same logical proof system, namely Gentzen sequent calculus for minimal logic. Our calculus is inspired by the Curry-Howard Isomorphism, in the sense that types, both for patterns and terms, correspond to propositions, terms correspond to proofs, and term reduction corresponds to sequent proof normalization performed by cut elimination. The calculus enjoys subject reduction, confluence, preservation of strong normalization w.r.t a system with meta-level substitutions, and strong normalization for well-typed terms, and, as a consequence, can be seen as an implementation calculus for functional formalisms defined with meta-level operations for pattern matching and substitutions.
منابع مشابه
An Algorithm for Color Matching of Textiles With Elimination of Limitation on Primaries
The proposed algorithm suggests a new method for determination of K/S value of primaries based on linear least Squares Technique. By applying the matrix pseudoinverse, a modification is introduced to eliminate the limitation on the numbers of applied dyes in one – constant Kubelka-Munk theory. The selection of dyes for tristimulus matching are also done on the basis of the initial spectrophotom...
متن کاملAn Algorithm for Color Matching of Textiles With Elimination of Limitation on Primaries
The proposed algorithm suggests a new method for determination of K/S value of primaries based on linear least Squares Technique. By applying the matrix pseudoinverse, a modification is introduced to eliminate the limitation on the numbers of applied dyes in one – constant Kubelka-Munk theory. The selection of dyes for tristimulus matching are also done on the basis of the initial spectrophotom...
متن کاملMDH: A High Speed Multi-phase Dynamic Hash String Matching Algorithm for Large-Scale Pattern Set
String matching algorithm is one of the key technologies in numerous network security applications and systems. Nowadays, the increasing network bandwidth and pattern set size both calls for high speed string matching algorithm for large-scale pattern set. This paper proposes a novel algorithm called Multi-phase Dynamic Hash (MDH), which cut down the memory requirement by multi-phase hash and e...
متن کاملDead Code Elimination through Dependent Types
Pattern matching is an important feature in various functional programming languages such as SML, Caml, Haskell, etc. In these languages, unreachable or redundant matching clauses, which can be regarded as a special form of dead code, are a rich source for program errors. Therefore, eliminating unreachable matching clauses at compile-time can signiicantly enhance program error detection. Furthe...
متن کاملGenerating a Pattern Matching Compiler by Partial Evaluation
Partial evaluation can be used for automatic generation of compilers and was first implemented in [10]. Since partial evaluation was extended to higher order functional languages [9] [2] it has become possible to write denotational semantics definitions of languages and implement these with very few changes in the language treated by partial evaluators. In this paper we use this technique to ge...
متن کامل